#include "GraphicsDefs.h"
#include <glm/glm.hpp>

extern  const glm::vec3 DOT_SCALE(1 / 3.0f, 1 / 3.0f, 1 / 3.0f);

extern  const VertexElement LEGACY_VERTEXELEMENTS[] =
{
	VertexElement(TYPE_VECTOR3, SEM_POSITION, 0, false),     // Position
	VertexElement(TYPE_VECTOR3, SEM_NORMAL, 0, false),       // Normal
	VertexElement(TYPE_UBYTE4_NORM, SEM_COLOR, 0, false),    // Color
	VertexElement(TYPE_VECTOR2, SEM_TEXCOORD, 0, false),     // Texcoord1
	VertexElement(TYPE_VECTOR2, SEM_TEXCOORD, 1, false),     // Texcoord2
	VertexElement(TYPE_VECTOR3, SEM_TEXCOORD, 0, false),     // Cubetexcoord1
	VertexElement(TYPE_VECTOR3, SEM_TEXCOORD, 1, false),     // Cubetexcoord2
	VertexElement(TYPE_VECTOR4, SEM_TANGENT, 0, false),      // Tangent
	VertexElement(TYPE_VECTOR4, SEM_BLENDWEIGHTS, 0, false), // Blendweights
	VertexElement(TYPE_UBYTE4, SEM_BLENDINDICES, 0, false),  // Blendindices
	VertexElement(TYPE_VECTOR4, SEM_TEXCOORD, 4, true),      // Instancematrix1
	VertexElement(TYPE_VECTOR4, SEM_TEXCOORD, 5, true),      // Instancematrix2
	VertexElement(TYPE_VECTOR4, SEM_TEXCOORD, 6, true),      // Instancematrix3
	VertexElement(TYPE_INT, SEM_OBJECTINDEX, 0, false)       // Objectindex
};

extern  const unsigned ELEMENT_TYPESIZES[] =
{
	sizeof(int),
	sizeof(float),
	2 * sizeof(float),
	3 * sizeof(float),
	4 * sizeof(float),
	sizeof(unsigned),
	sizeof(unsigned)
};



